Skip to content

feat(tabs): create vertical tabs story#21654

Merged
maradwan26 merged 59 commits into
carbon-design-system:mainfrom
sangeethababu9223:feat/tabs-vertical-tab
May 20, 2026
Merged

feat(tabs): create vertical tabs story#21654
maradwan26 merged 59 commits into
carbon-design-system:mainfrom
sangeethababu9223:feat/tabs-vertical-tab

Conversation

@sangeethababu9223

@sangeethababu9223 sangeethababu9223 commented Feb 25, 2026

Copy link
Copy Markdown
Member

Closes #19761

Adds vertical tabs support to Carbon Web Components, achieving parity with the React implementation.

Changelog

New

  • cds-tabs-vertical - Wrapper component for vertical tab layout
  • Responsive behavior with 673px breakpoint (matches Carbon's md breakpoint) - Same as React version
  • Automatic height calculation based on tallest panel
  • Optional custom-height property for manual height control
  • Keyboard navigation with Up/Down arrow keys

Testing / Reviewing

In Web Components storybook, Vertical story should be there under Tabs component and the behaviour matches the react version.

Note:
In smaller screens Vertical tabs is expected to match the behaviour of Conatined Tabs. And I did notice a slightly different styling for overflow left and right buttons in WC compared to React. I could create a separate issue for that after doing further research as this a contined tabs specific issue.

PR Checklist

As the author of this PR, before marking ready for review, confirm you:

  • Reviewed every line of the diff
  • Updated documentation and storybook examples
  • Wrote passing tests that cover this change
  • Addressed any impact on accessibility (a11y)
  • Tested for cross-browser consistency
  • Validated that this code is ready for review and status checks should pass

More details can be found in the pull request guide

@netlify

netlify Bot commented Feb 25, 2026

Copy link
Copy Markdown

Deploy Preview for v11-carbon-web-components ready!

Name Link
🔨 Latest commit ba0d28b
🔍 Latest deploy log https://app.netlify.com/projects/v11-carbon-web-components/deploys/6a0d1f99fde75e0008f725c0
😎 Deploy Preview https://deploy-preview-21654--v11-carbon-web-components.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify

netlify Bot commented Feb 25, 2026

Copy link
Copy Markdown

Deploy Preview for v11-carbon-react ready!

Built without sensitive environment variables

Name Link
🔨 Latest commit ba0d28b
🔍 Latest deploy log https://app.netlify.com/projects/v11-carbon-react/deploys/6a0d1f99ccfac40008ce5fdc
😎 Deploy Preview https://deploy-preview-21654--v11-carbon-react.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@codecov

codecov Bot commented Feb 27, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 95.51%. Comparing base (4bb7d8d) to head (ba0d28b).
⚠️ Report is 3 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main   #21654   +/-   ##
=======================================
  Coverage   95.51%   95.51%           
=======================================
  Files         582      582           
  Lines       50410    50410           
  Branches     6789     6762   -27     
=======================================
  Hits        48148    48148           
  Misses       2130     2130           
  Partials      132      132           
Flag Coverage Δ
main-packages 89.24% <ø> (ø)
web-components 98.07% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@emyarod emyarod left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good to me! on a side note, should we prevent default behavior on keydown? I noticed the page would also scroll when I used the arrow keys to navigate

@sangeethababu9223

Copy link
Copy Markdown
Member Author

looks good to me! on a side note, should we prevent default behavior on keydown? I noticed the page would also scroll when I used the arrow keys to navigate

Thank you for poiinting this out @emyarod.
I've added the prevent default to navigate key option.

@sangeethababu9223 sangeethababu9223 requested a review from emyarod May 19, 2026 05:52

@tay1orjones tay1orjones left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, could you add tests?

@sangeethababu9223

Copy link
Copy Markdown
Member Author

LGTM, could you add tests?

Hey @tay1orjones ,
We don't have any tests added for tabs component in Web components now. I could create a separate PR with tests for the whole component.

@maradwan26 maradwan26 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@maradwan26 maradwan26 added this pull request to the merge queue May 20, 2026
Merged via the queue into carbon-design-system:main with commit 7429190 May 20, 2026
40 checks passed
@github-project-automation github-project-automation Bot moved this from 🚦 In Review to ✅ Done in Design System May 20, 2026
@carbon-automation

Copy link
Copy Markdown
Contributor

Hey there! v11.108.0 was just released that references this issue/PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: ✅ Done

Development

Successfully merging this pull request may close these issues.

Tabs Parity: Create Vertical Component

7 participants